Multiplexed packet local area networking using an Ethernet physical layer device

ABSTRACT

Multiplexed packet local area networking using an Ethernet physical layer device. In one embodiment, a network device having dual port Ethernet physical layer devices can be configured to receive a packet on a first Ethernet port. The network device can extract first packet data that is destined for the network device from the data section of the packet and insert second packet data that is destined for the gateway node into the packet to produce a modified packet. The modified packet is then transmitted by the network device over a second Ethernet port.

This application claims priority to provisional application No.61/832,424, filed Jun. 7, 2013, which is incorporated herein byreference in its entirety.

BACKGROUND

1. Field of the Invention

The present invention relates generally to Ethernet networks and, moreparticularly, to multiplexed packet local area networking using anEthernet physical layer device.

2. Introduction

Electronic control units (ECUs) are playing an increasingly importantrole in various industrial and commercial control applications. Oneexample of such a control application is an automotive vehicle network.Automotive networks are increasingly incorporating ECUs, sensors,actuators, etc. to improve safety, reduce emissions, reduce fuelconsumption, improve driver comfort, increase driver visibility ofvehicle status, etc. For example, ECUs, sensors, actuators, etc. can beused in various subsystems such as a power train subsystem, chassissubsystem, driver assist subsystem, infotainment subsystem, or the like.

The requirements on the performance of such networks has increaseddramatically as highly interconnected systems have emerged that executecomplex, real-time distributed control algorithms. For example, properfunctioning of passenger safety mechanisms (e.g., airbags, brake assist,etc.) require high-performance, low latency connections betweeninterconnected systems. Notwithstanding such performancecharacteristics, it is still desired that such networks minimize costand minimize wiring harness weight, all while maximizing reliability.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to describe the manner in which the above-recited and otheradvantages and features of the invention can be obtained, a moreparticular description of the invention briefly described above will berendered by reference to specific embodiments thereof which areillustrated in the appended drawings. Understanding that these drawingsdepict only typical embodiments of the invention and are not thereforeto be considered limiting of its scope, the invention will be describedand explained with additional specificity and detail through the use ofthe accompanying drawings in which:

FIG. 1 illustrates an example of a network topology within an automotivevehicle network environment.

FIGS. 2A and 2B illustrate example embodiments of a network domainhaving a plurality of multiplexer nodes.

FIG. 3 illustrates an example embodiment of a multi-node multiplexedpacket format.

FIG. 4 illustrates an example embodiment of a multiplexer node.

FIG. 5 illustrates an example of packet multiplexing.

FIG. 6 illustrates a flowchart of a process of the present invention.

DETAILED DESCRIPTION

Various embodiments of the invention are discussed in detail below.While specific implementations are discussed, it should be understoodthat this is done for illustration purposes only. A person skilled inthe relevant art will recognize that other components and configurationsmay be used without parting from the spirit and scope of the invention.

Control networks such as those used in automotive networking are rapidlygrowing in the marketplace. ECUs in such control networks can operatewith low to medium data rate support, which can easily be accommodatedby existing Ethernet technology. Advantages of Ethernet technologyinclude a broad ecosystem that spans various media specifications (e.g.,backplane, twinax, twisted-pair, coax, optical fiber, etc.) anddistances (e.g., 1 meter to greater than 10 kilometers.). The broadecosystem has produced vast amounts and variety of proven physical layerdevices (PHYs), media access control (MAC) products, switches, etc. Ingeneral, Ethernet is a known technology that continues to expand inreach and competitiveness in various markets and applications.

In applying Ethernet technology to control networks it is recognizedthat the unique requirements of control networks and applicationsdiffers from that of conventional Ethernet networks and applications.For example, in an automotive network environment, bus and ring networktopologies and other shared medium networks are often desired to reducethe amount of cabling that contributes to the weight of the entirewiring harness. Moreover, in the example of an automotive networkenvironment, space can be severely limited. Where the control networksare used for mission-critical applications, packet collision isunacceptable and latency has to be minimized to avoid disruption ordelay in the mission critical application.

In the present invention, such needs exhibited by control networks canbe met through a network device having a first Ethernet port that isconfigured for receiving a packet having a preamble, a start framedelimiter field, and a data section, the data section having multiplexedtherein a plurality of packet data that are respectively destined for aplurality of network devices from a gateway node, a packetmultiplexer/demultiplexer module that is configured to extract firstpacket data that is destined for the network device from the datasection of the packet and insert second packet data that is destined forthe gateway node into the packet to produce a modified packet, whereinthe second packet data is inserted at one or more locations in the datasection of the packet that were previously occupied by the extractedfirst packet data, and a second Ethernet port that is configured totransmit the modified packet. In the present invention, it is recognizedthat the minimum packet length and source/destination MAC addressoverheads in Ethernet networks can be too large when considering thevery short control messages used by the control network. In oneembodiment, the network device also includes a multiplexer port that iscoupled to the packet multiplexer/demultiplexer module. In oneembodiment, the multiplexer port can operate at 10 Mbps, while the firstand second Ethernet ports operate at 100 Mbps. The output of themultiplexer port can be used to facilitate low to medium data ratesupport for the network device.

The network device such as that described above can be used tofacilitate a shared medium network process that is enabled by the dualEthernet port PHY technologies. In one embodiment, a process is providedthat includes receiving, at a first Ethernet port of a first of aplurality of network devices in a local area network, a packet having apreamble, a start frame delimiter field, and a data section, the datasection having multiplexed therein a plurality of packet data that arerespectively destined for the plurality of network devices from agateway node, extracting, by the first network device from the packet,first packet data that is destined for the first network device from thedata section of the packet, inserting, by the first network device intothe packet, second packet data that is destined for the gateway node,the inserting producing a modified packet, wherein the second packetdata is inserted at one or more locations in the data section of thepacket that were previously occupied by the extracted first packet data;and transmitting, by a second Ethernet port of the first network device,the modified packet onto the local area network.

In the present invention, a packet multiplexing scheme is provided thatcan be used on a shared media network that is used by network deviceshaving dual port Ethernet PHY technologies. As will be come apparent inthe following description, the principles of the present invention canbe used with various Ethernet technologies, data rates and cable types.To illustrate the features of the present invention, reference will bemade to an automotive vehicle network environment. Such an example isnot intended to be limiting. Rather, it should be recognized that theprinciples of the present invention can be applied to any networkenvironment that can benefit from a shared media network.

FIG. 1 illustrates an example of a automotive network environment thatincorporates network devices incorporating features of the presentinvention. As illustrated, the automotive network environment includesmultiple domains that are facilitated by domain gateways 110.Communication between a gateway 110 and the plurality of network devices120 within its domain can be based on a packet multiplexing scheme ofthe present invention.

In various embodiments, a domain can include those networked componentsthat relate to a power train function, a chassis function, a bodycontrol function, a drive assist function, an infotainment function,etc. Domain gateways 110 can be further interconnected with each othervia a mesh backbone network.

Each domain gateway 110 can be configured to communicate with aplurality of network devices 120 that can represent ECUs, sensors,actuators, or the like in a control network. In the example of theautomotive network environment, the plurality of network devices 120 arecoupled to domain gateway 110 via a shared media such as one unshieldedtwisted pair (UTP) media. An example of communication over one UTP mediais Broadcom's BroadR-Reach® technology, which leverages proven BASE-TPHYs in providing a short-reach 100 Mbps channel.

FIG. 2A illustrates a communication framework within a single domain. Asillustrated, gateway node 210 is configured for communication with aplurality of network devices that can be referred to as multiplexernodes 220 ₁-220 _(N). As would be appreciated, the particular number ofmultiplexer nodes within a given domain would be implementationdependent. In the embodiment of FIG. 2A, the plurality of multiplexernodes 220 ₁-220 _(N) are connected in a bus topology. In anotherembodiment such as that illustrated in FIG. 2B, the plurality ofmultiplexer nodes 220 ₁-220 _(N) are connected in a ring topology. Ineach of these embodiments, the plurality of multiplexer nodes 220 _(n)include two Ethernet port PHYs to facilitate connection to neighboringnodes.

In the present invention it is recognized that local area networking ofthe type used for control purposes typically carries shorter messagesthat can be enabled via low to medium data rate support. It is a featureof the present invention that these shorter messages from a plurality ofmultiplexer nodes 220 ₁-220 _(N) can be multiplexed into a single packetfor communication over a shared medium.

One embodiment of a multi-node multiplexed packet format is illustratedin FIG. 3. In the illustrated embodiment, the packet begins withpreamble field 310 and start frame delimeter (SFD) field 320. Unlikeconventional Ethernet packets that continue with a destination addressfield, a source address field, and length/type data field prior to apacket data section, the packet of the present invention followspreamble field 310 and SFD field 320 with multiplexed data from theplurality of multiplexer nodes 220 ₁-220 _(N).

In the illustrated embodiment, SFD field 320 is followed with a firstpacket data segment 331 ₁ associated with multiplexer node 220 ₁, afirst packet data segment 331 ₂ associated with multiplexer node 220 ₂,a first packet data segment 331 ₃ associated with multiplexer node 220₃, etc. until the first packet data segment 331 _(N) associated withmultiplexer node 220 _(N) is reached. Following the first packet datasegment 331 _(N) associated with last multiplexer node 220 _(N) is asecond packet data segment 332 ₁ associated with multiplexer node 220 ₁,a second packet data segment 332 ₂ associated with multiplexer node 220₂, a second packet data segment 332 ₃ associated with multiplexer node220 ₃, etc. until the second packet data segment 332 _(N) associatedwith multiplexer node 220 _(N) is reached. This multiplexing processcontinues as packet data segments that are associated with the pluralityof multiplexer nodes 220 ₁-220 _(N) continue to be multiplexed into thepacket in round robin fashion.

From the perspective of multiplexer node 220 ₁, the combination ofpacket data segments 331 ₁, 332 ₁, 333 ₁, etc. would produce the packetdata for multiplexer node 220 ₁. Similarly, from the perspective ofmultiplexer node 220 ₂, the combination of packet data segments 331 ₂,332 ₂, 333 ₂, etc. would produce the packet data for multiplexer node220 ₂. In one embodiment, each packet data segment is 4-bits long. Aswould be appreciated, the particular length of the packet data segmentswould be implementation dependent.

In operation, packets originate in gateway node 210 with multiplexeddata included therein for all other multiplexer nodes 220 ₁-220 _(N).When the packet travels through the network reaching another multiplexernode, the multiplexed packet data pertaining to that multiplexer node isextracted from the packet and replaced with data from that multiplexernode that is to be delivered back to gateway node 210. In the exampleembodiment of the ring topology in FIG. 2B, the packet would circulateback to the gateway node 210 after going through all other multiplexernodes in the return path of the network to gateway node 210.

For example, consider multiplexer node 220 ₁. A downlink packet that istransmitted by gateway node 210 is received by multiplexer node 220 ₁ ona first Ethernet port. Multiplexer node 220 ₁ is configured to extractthe relevant packet data segments (e.g., packet data segments 331 ₁, 332₁, 333 ₁) from the received downlink packet. The combination of therelevant packet data segments would represent the data message fromgateway node 210 to multiplexer node 220 ₁.

In establishing two-way communication between gateway node 210 andmultiplexer node 220 ₁ on the ring, multiplexer node 220 ₁ is alsoconfigured to insert packet data into the received downlink packet.Specifically, multiplexer node 220 ₁ is configured to insert packet datasegments of a message from multiplexer node 220 ₁ to gateway node 210 inthe same locations of the packet (e.g., packet data segments 331 ₁, 332₁, 333 ₁) at which the packet data segments were previously extracted.In other words, multiplexer node 220 ₁ is configured to extract data andinsert data from the same locations in the downlink packet. Theremaining locations of the packet data segments that are associated withthe other multiplexer nodes 220 ₂ to 220 _(N) would be left undisturbed.After multiplexer node 220 ₁ inserts packet data into the packet tocreate a modified packet, the modified packet is then transmitted as anuplink packet by multiplexer node 220 ₁ onto a second Ethernet port fordelivery to multiplexer node 220 ₂. Each of multiplexer nodes 220 ₂ to220 _(N) in the return path to gateway node 210 would be configured toremove data and insert data from the uplink packet.

Eventually, the uplink packet is returned to gateway node 210 viatransmission by multiplexer node 220 _(N). At that point, the packetdata segments can include message data from each of the multiplexer node220 ₁ to 220 _(N) to gateway node 210. In general, the result ofextraction and insertion of data by each multiplexer node 220 ₁ to 220_(N) is the creation of two-way communication between gateway node 210and each of the multiplexer node 220 ₁ to 220 _(N) via a single packetthat is separately modified as it traverses the shared medium.

In one embodiment, addresses of the multiplexer nodes are pre-assigned.In one example, the pre-assignment can be facilitated through pinselections. In another example, the pre-assignment can be facilitatedthrough register programming. In general, any mechanism that enables thegateway node and multiplexer nodes to commonly identify assignedlocations in the packet for extraction and insertion of one or morepacket data segments can be used.

In one embodiment, multiplexer nodes can also communicate with othermultiplexer nodes. This communication can be facilitated by the gatewaynode. In one embodiment, a set of bits (e.g., three bits for an 8-nodenetwork) can be used to establish destination addresses on the localarea network.

FIG. 4 illustrates an example embodiment of a multiplexer node. Asillustrated, multiplexer node 400 includes Ethernet port PHY 410 andEthernet port PHY 420. Ethernet port PHYs 410, 420 enable multiplexernode 400 to connect to two adjacent multiplexer nodes. Coupled toEthernet port PHYs 410, 420 is packet multiplexer/demultiplexer module430. Packet multiplexer/demultiplexer module 430 includes minimal logicfor multiplexing/demultiplexing data to/from a packet. With a pipelineimplementation, the delay incurred while passing through the packetmultiplexer/demultiplexer module 430 can be as small as one or twopacket data segments. In an example of a eight-node ring, the totaldelay incurred by passing a packet through all eight multiplexer nodeswould be less than 10 μs if each Ethernet link segment on the ring has adelay of about 1 μs. This speed of transport can enable animplementation where control messages do not have to be prioritized. Allmessages and all of the multiplexer nodes would have guaranteed accessto bandwidth with minimal delays.

In one embodiment, the packet multiplexer/demultiplexer module 430 canbe implemented as an additional digital block into a two-port EthernetPHY. In an alternative embodiment, packet multiplexer/demultiplexermodule 430 can be implemented in another chip, FPGA/CPLD or otherprogrammable devices.

As illustrated, packet multiplexer/demultiplexer module 430 is alsocoupled to multiplexer port 440. Multiplexer port 440 can provide thelow to medium data rate support for that node. The data rate ofmultiplexer port 440 would be a fraction of the data rate of Ethernetport PHYs 410, 420. For example, if eight nodes exist in the local areanetwork and the Ethernet port PHYs 410, 420 operate at 100 Mbps, thenmultiplexer port 440 would provide a data rate of 100 Mbps/8=12.5 Mbpsto the multiplexer node.

Here, it should be recognized that for various applications, differentEthernet ports may be used at speeds of 10 Gbps or higher. The number ofmultiplexer nodes per local area network, the number of ports per nodeand bandwidth per multiplexer port are all configurable using properEthernet technology and packet multiplexing format. Differentmultiplexer nodes can also be assigned different bandwidth if needed.

For example, different multiplexer nodes can be assigned a differentnumber of slots in the round robin multiplexing scheme. This enableseach multiplexer node to be configured with a customized percentage ofthe overall shared media bandwidth. Consider the example of packetmultiplexing illustrated in FIG. 5. In this example, eight slots thateach correspond to 100/8=12.5 Mbps of available bandwidth are assignedto five multiplexer nodes. Node 1 is configured to use two slots, node 4is configured to use three slots, while nodes 2, 3 and 5 are eachconfigured to use one slot. With this configuration, node 1 would have25 Mbps of available bandwidth, node 2 would have 12.5 Mbps of availablebandwidth, node 3 would have 12.5 Mbps of available bandwidth, node 4would have 37.5 Mbps of available bandwidth, and node 5 would have 12.5Mbps of available bandwidth. As would be appreciated, the amount ofbandwidth per slot can also be configured based on the total number ofround robin slots available to the group of multiplexer nodes. In oneembodiment, the multiplexer port can be configured as a conventional 10BASE-T port. In other embodiments, the multiplexer port can have aserial or parallel interface definition.

Where the local area network is configured as a ring network, the datapackets circulating in one direction in the ring provide full duplexcommunication for each multiplexer node as data is read and replacedgoing through each of the multiplexer nodes. Since the backbone Ethernetis a full duplex network, the data packets may be circulated clockwiseand counter clockwise at the same time, thereby providing twice thebandwidth.

In one embodiment, the extra bandwidth can be used to double the numberof multiplexer nodes. In another embodiment, the extra bandwidth can beused to provide two multiplexer ports on each multiplexer node, or todouble the bandwidth on single multiplexer ports.

In one embodiment, the extra bandwidth can be used to provide dataredundancy or fault tolerance in the local area network. For example, ifone node or a cable link fails on the ring, the multiplexer nodes thatare adjacent to the failed node or link may communicate back to thegateway using the opposite direction of communication. As would beappreciated, various failure recovery schemes can be defined thatleverage the additional bandwidth. Significantly, if one-pair Ethernettechnology is used for the ring backbone, a fault tolerant network isachieved with only a single UTP cable.

Having described a multiplexed packet mechanism for enabling sharedmedia networking, reference is now made to the flowchart of FIG. 6,which illustrates a flowchart of a process of the present invention. Asillustrated, the process begins at step 602 where a downlink packet isreceived at a first Ethernet port of a network device. The downlinkpacket that is received at the first Ethernet port can be routed to amultiplexer/demultiplexer module.

The multiplexer/demultiplexer module can be configured to extract, atstep 604, first packet data that is intended for the network device.Extraction of the first packet data from the received downlink packetcan be based on a pre-assigned address for the network device. Forexample, the pre-assigned address can correspond to one or more slots ina round robin multiplexing scheme. At step 606, themultiplexer/demultiplexer module can also be configured to insert secondpacket data into the received packet. Here, the locations of insertioncan correspond to the locations of extraction such that the packet datathat is associated with other network devices is left undisturbed. Inthe example of a round robin multiplexing scheme, the collection ofpacket data segments can be combined to form a message that is receivedby the network device or sent to the gateway node. In one embodiment,the collection of packet data segments also includes a set of cyclicredundancy check (CRC) bits that provide a parity bit based errordetection scheme.

It should be noted that the particular mechanism by which the packetdata is extracted and inserted into the packet would be implementationdependent. While an example of a round robin multiplexing scheme wasprovided, such an example was not intended to be limiting. In general,any scheme that enables a network devices to distinguish the locationsof relevant packet data segments in a manner that does not prevent othernetwork devices from extracting their relevant packet data segments canbe used. As such, it should be recognized that any multiplexing schemethat enables a network device to extract and insert one or more packetdata segments into a packet while not interfering with the usage of thepacket by other network devices can be used.

The extraction of one or more packet data segments and the subsequentinsertion of one or more packet data segments produced a modifiedpacket. At step 608, such a modified packet is transmitted as an uplinkpacket by the network device on a second Ethernet port for eventualreturn to a gateway node. As would be appreciated, such a uplink packetcan be further modified by other network devices prior to reaching thegateway node. The modifications by the collective set of network devicesenables two-way communication between the gateway node and each of thenetwork devices using the shared media.

Another embodiment of the invention may provide a machine and/orcomputer readable storage and/or medium, having stored thereon, amachine code and/or a computer program having at least one code sectionexecutable by a machine and/or a computer, thereby causing the machineand/or computer to perform the steps as described herein.

These and other aspects of the present invention will become apparent tothose skilled in the art by a review of the preceding detaileddescription. Although a number of salient features of the presentinvention have been described above, the invention is capable of otherembodiments and of being practiced and carried out in various ways thatwould be apparent to one of ordinary skill in the art after reading thedisclosed invention, therefore the above description should not beconsidered to be exclusive of these other embodiments. Also, it is to beunderstood that the phraseology and terminology employed herein are forthe purposes of description and should not be regarded as limiting.

What is claimed is:
 1. A method, comprising: receiving, at a firstEthernet port of a first of a plurality of network devices in a localarea network, a packet having a preamble, a start frame delimiter field,and a data section, the data section having multiplexed therein aplurality of packet data that are respectively destined for theplurality of network devices from a gateway node including first packetdata that is destined for the first network device occupying a firstpredetermined position in the data section of the packet; extracting, bythe first network device from the packet, the first packet data that isdestined for the first network device from the first predeterminedposition in the data section of the packet; inserting, by the firstnetwork device into the packet, second packet data that is destined forthe gateway node, the inserting producing a modified packet, wherein thesecond packet data is inserted at the first predetermined position inthe data section of the packet that was previously occupied by theextracted first packet data and the inserted second packet data does notextend into a predetermined position in the data section of the packetadjacent to the first predetermined position; and transmitting, by asecond Ethernet port of the first network device, the modified packetonto the local area network.
 2. The method of claim 1, wherein thereceiving comprises receiving at 100 Mbps.
 3. The method of claim 1,wherein the receiving comprises receiving at a single wire pair port. 4.The method of claim 1, wherein the first network device is a device onan automotive vehicle network.
 5. The method of claim 1, wherein thedata section of the packet contains segments of each of the plurality ofpacket data that are inserted into the data section in a round robinorder.
 6. The method of claim 1, wherein the extracting comprisesextracting multiple packet segments of the first packet data that aremultiplexed in separately identified locations of the data section ofthe packet.
 7. The method of claim 1, further comprising forwarding theextracted first packet data to a multiplexer port that operates at alower rate than the first Ethernet port.
 8. A network device,comprising: a first Ethernet port that is configured for receiving apacket having a preamble, a start frame delimiter field, and a datasection, the data section having multiplexed therein a plurality ofpacket data that are respectively destined for a plurality of networkdevices from a gateway node and respectively occupying a plurality ofpredetermined positions in the packet corresponding to the plurality ofnetwork devices; a packet multiplexer/demultiplexer module that isconfigured to extract first packet data that is destined for the networkdevice from a first predetermined position in the data section of thepacket corresponding to the network device including the packetmultiplexer/demultiplexer and insert second packet data that is destinedfor the gateway node into the first predetermined position in the packetto produce a modified packet, such that the second packet data isinserted at one or more locations in the data section of the packet thatwere previously occupied by the extracted first packet data and theinserted second packet data does not extend into a predeterminedposition in the data section of the packet adjacent to the firstpredetermined position; and a second Ethernet port that is configured totransmit the modified packet.
 9. The network device of claim 8, whereinthe first port is a 100 Mbps port.
 10. The network device of claim 8,wherein the first port is a single wire pair port.
 11. The networkdevice of claim 8, wherein the network device is a device on anautomotive vehicle network.
 12. The network device of claim 8, whereinthe data section of the packet contains segments of each of theplurality of packet data that are inserted into the data section in around robin order.
 13. The network device of claim 8, wherein the packetmultiplexer/demultiplexer module is configured to extract multiplepacket segments of the first packet data that are multiplexed inseparately identified locations of the data section of the packet. 14.The network device of claim 8, further comprising a multiplexer portthat is coupled to the packet multiplexer/demultiplexer module, themultiplexer port operating at a lower rate than either the firstEthernet port or the second Ethernet port.
 15. A method performed by anetwork device, comprising: transmitting, by a first Ethernet port ofthe network device, a first packet having a preamble, a start framedelimiter field, and a first data section, the first data section havingmultiplexed therein a plurality of first packet data that arerespectively destined for a plurality of network devices; and receiving,by a second Ethernet port of the network device, a second packet havinga preamble, a start frame delimiter field, and a second data section,the second data section having multiplexed therein a plurality of secondpacket data that are respectively received from the plurality of networkdevices; wherein a first item of the plurality of first packet data isin a predetermined first location in the first data sectioncorresponding to a first network device of the plurality of networkdevices to which the first item is destined; and wherein a correspondingfirst item of the plurality of second packet data, received from thefirst network device, is in the same predetermined first location in thesecond data section.
 16. The method of claim 15, wherein the receivingcomprises receiving at a single wire pair port.
 17. The method of claim15, wherein the network device is a gateway device.
 18. The method ofclaim 15, wherein the first data section of the first packet containssegments of each of the plurality of first packet data that are insertedinto the first data section in a round robin order.
 19. The method ofclaim 15, wherein transmitting the first packet further comprisestransmitting the first packet including the first data section adjacentto the start frame delimiter field.